#define _CRT_SECURE_NO_WARNINGS
//#include<stdio.h>
//int judge(int arr[3][4], int row, int col,int des )
//{
//	int ret = 0;
//	int i = 0;
//	if(col == 1)
//	{
//		for (i = 0; i < row; i++)
//		{
//			if (arr[i][0] ==des )
//			{
//				ret = 1;
//				break;
//			}
//		}
//	}
//	else
//	{
//		for (i = 0; i < row; i++)
//		{
//			int right = col - 1;
//			int left = 0;
//			while (left <= right && left >= 0 && right <= col-1)
//			{
//				int mid = (right + left) / 2;
//				if (arr[i][mid] ==des )
//				{
//					ret = 1;
//					goto end;
//				}
//				else if (des < arr[i][mid])
//				{
//					right = mid - 1;
//				}
//				else
//				{
//					left = mid + 1;
//				}
//			}
//
//		}
//	}
//	end:
//	return ret;
//}
//int main()
//{
//	int arr[3][4] = { {1,2,3,4},{2,3,4,5},{3,4,5,6} };
//	int whe = judge(arr,3,4,7);
//	if (whe)
//		printf("YES");
//	else
//		printf("NO");
//	return 0;
//}

//#include<stdio.h>
//#include<string.h>
//void reverse(char* left,char* right)
//{
//	while (left < right)
//	{
//		int tmp = *left;
//		*left = *right;
//		*right = tmp;
//		left++;
//		right--;
//	}
//}
//char* rotate(char* str,int k)
//{
//	int len = strlen(str);
//	reverse(str, str + len - 1);
//	reverse(str, str +len-k-1 );
//	reverse(str + len - k , str+len-1);
//	return str;
//}
//int main()
//{
//	int k = 2;
//	char arr[100] = "ABCD";
//	printf("%s\n", arr);
//	printf("%s\n", rotate(arr,k));
//	return 0;
//}

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
void reverse(char* left, char* right)
{
	while (left < right)
	{
		int tmp = *left;
		*left = *right;
		*right = tmp;
		left++;
		right--;
	}
}
char* rotate(char* str, int k)
{
	int len = strlen(str);
	reverse(str, str + len - 1);
	reverse(str, str + len - k - 1);
	reverse(str + len - k, str + len - 1);
	return str;
}
int judge(char* arr1, char* arr2)
{
	int ret = 0;
	int len = strlen(arr1);
	char* arr = malloc(sizeof(char) * len + 1);
	int i = 0;
	int j = 0;
	for (i = 1; i < len; i++)
	{
		for (j = 0; j <= len; j++)
		{
			arr[j] = arr1[j];
		}
		if (strcmp(rotate(arr, i),arr2) == 0)
		{
			ret = 1;
			break;
		}
	}
	return ret;
}
int main()
{
	char arr1[] = "abcd";
    char arr2[] = "ACBD";
	printf("%d", judge(arr1,arr2));
	return 0;
}